/*
 * PinConfiguration.hpp
 *
 *  Created on: 6 dec. 2012
 *      Author: Admin
 */


#ifndef PINCONFIGURATION_HPP_
#define PINCONFIGURATION_HPP_

class HardwareController {
public:
	static HardwareController& getHardwareController();
	virtual ~HardwareController();

	bool pollCollisionSensorBack();
	bool pollCollisionSensorFront();
	bool pollDistanceSensor();
	bool pollEmergencyStop();

	void activateWheels();
	void disableWheels();

	void activateLED();
	void disableLED();

	void leftWheelForward();
	void leftWheelBackward();
	void rightWheelForward();
	void rightWheelBackward();

	void wait(unsigned int ms);
	void wait(unsigned int* ms);
private:
	HardwareController();
};

#endif /* PINCONFIGURATION_HPP_ */
